﻿using System;
using System.Collections.Generic;

namespace WUDI.ECharts.Toolbox.Feature.MagicType
{
	/// <summary>
	/// Object
	/// 动态类型切换
	/// 示例：
	/// feature: {
	///     magicType: {
	///         type: ['line', 'bar', 'stack', 'tiled']
	///     }
	/// }
	/// </summary>
	public class MagicType
	{

		/// <summary>
		/// boolean
		/// 是否显示该工具。
		/// </summary>
		public Boolean show { get; set; } = true;

		/// <summary>
		/// Array
		/// 启用的动态类型，包括'line'（切换为折线图）, 'bar'（切换为柱状图）, 'stack'（切换为堆叠模式）, 'tiled'（切换为平铺模式）。
		/// </summary>
		public List<object> type { get; set; }

		/// <summary>
		/// Object
		/// 各个类型的标题文本，可以分别配置。
		/// </summary>
		public WUDI.ECharts.Toolbox.Feature.MagicType.Title title { get; set; }

		/// <summary>
		/// Object
		/// 各个类型的 icon path，可以分别配置。
		/// </summary>
		public WUDI.ECharts.Toolbox.Feature.MagicType.Icon icon { get; set; }

		/// <summary>
		/// Object
		/// 动态类型切换 icon 样式设置。由于 icon 的文本信息只在 icon hover 时候才显示，所以文字相关的配置项请在 emphasis 下设置。
		/// </summary>
		public WUDI.ECharts.Toolbox.Feature.MagicType.IconStyle iconStyle { get; set; }

		/// <summary>
		/// Object
		/// </summary>
		public WUDI.ECharts.Toolbox.Feature.MagicType.Emphasis.Emphasis emphasis { get; set; }

		/// <summary>
		/// Object
		/// 各个类型的专有配置项。在切换到某类型的时候会合并相应的配置项。
		/// </summary>
		public WUDI.ECharts.Toolbox.Feature.MagicType.Option option { get; set; }

		/// <summary>
		/// Object
		/// 各个类型对应的系列的列表。
		/// </summary>
		public WUDI.ECharts.Toolbox.Feature.MagicType.SeriesIndex seriesIndex { get; set; }

	}
}
